package com.ynet.middleground.riskmanage.bean.hangxin;

import javax.validation.constraints.NotEmpty;

import com.thoughtworks.xstream.annotations.XStreamAlias;
import com.ynet.core.common.BaseReqObj;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * @author liwq
 * @description 红字发票申请单下载请求信息
 * @date 2021-11-05 16:04
 */
@Data
@EqualsAndHashCode(callSuper = false)
@ApiModel(value = "红字发票申请单下载请求信息", description = "红字发票申请单下载请求信息")
public class HzfpsqdxzReq extends BaseReqObj {

    private static final long serialVersionUID = -356578871956867695L;

    @XStreamAlias("NSRSBH")
    @ApiModelProperty(value = "纳税人识别号", notes = "纳税人识别号", required = true)
    @NotEmpty(message = "纳税人识别号不能为空")
    private String nsrsbh;

    @ApiModelProperty(value = "分机号", notes = "分机号", required = true)
    @NotEmpty(message = "分机号不能为空")
    @XStreamAlias("FJH")
    private String fjh;

    @ApiModelProperty(value = "发票种类", notes = "发票种类", required = true)
    @NotEmpty(message = "发票种类不能为空")
    @XStreamAlias("FPZL")
    private String fpzl;

    @ApiModelProperty(value = "金税盘编号", notes = "金税盘编号")
    @XStreamAlias("JSPBH")
    private String jspbh;

    @ApiModelProperty(value = "逾期状态", notes = "逾期状态", required = true)
    @NotEmpty(message = "逾期状态不能为空")
    @XStreamAlias("YQZT")
    private String yqzt;

    @ApiModelProperty(value = "填开日期起", notes = "填开日期起")
    @XStreamAlias("TKRQQ")
    private String tkrqq;

    @ApiModelProperty(value = "填开日期止", notes = "填开日期止")
    @XStreamAlias("TKRQZ")
    private String tkrqz;

    @ApiModelProperty(value = "销方税号", notes = "销方税号")
    @XStreamAlias("XFSH")
    private String xfsh;

    @ApiModelProperty(value = "购方税号", notes = "购方税号")
    @XStreamAlias("GFSH")
    private String gfsh;

    @ApiModelProperty(value = "信息表编号", notes = "信息表编号")
    @XStreamAlias("XXBBH")
    private String xxbbh;

    @ApiModelProperty(value = "信息表范围", notes = "信息表范围", required = true)
    @NotEmpty(message = "信息表范围不能为空")
    @XStreamAlias("XXBFW")
    private String xxbfw;

    @ApiModelProperty(value = "页号", notes = "页号", required = true)
    @NotEmpty(message = "页号不能为空")
    @XStreamAlias("PAGENO")
    private String pageno;

    @ApiModelProperty(value = "每页记录数", notes = "每页记录数", required = true)
    @NotEmpty(message = "每页记录数不能为空")
    @XStreamAlias("PAGESIZE")
    private String pagesize;
}
